import os
import sys
import time
from selenium.selenium import selenium
from executer import Executer
from subprocess import *

class SeleniumSetup(object):

    @staticmethod
    def setup(OS,browser,url,test_result_dir,test_log_id):         
        build_test_dir = SeleniumSetup.__get_test_build_directory(test_log_id,test_result_dir)
        platform = OS+"_"+browser
 
        SeleniumSetup.user    = selenium("localhost",'4444',browser,url)
        
        SeleniumSetup.user.start()
        SeleniumSetup.user.open("/")        
        SeleniumSetup.user.window_maximize()        
    
    @staticmethod
    def __get_test_build_directory(test_log_id,test_result_dir):
        
        if not os.path.isdir(test_result_dir):
            os.mkdir(test_result_dir)
            
        os.chdir(test_result_dir)
        log_dir   = os.path.join(os.pardir,'test_log')
        if not os.path.isdir(log_dir):
            os.mkdir(log_dir)

        os.chdir(log_dir)    
        #print os.getcwd()
        build_dir = os.path.join(os.getcwd(),test_log_id)
        if not os.path.isdir(build_dir):
            os.mkdir(build_dir)
        
        os.chdir(build_dir)
        #print os.getcwd()
        
        return os.getcwd()